Abstract Counterexample-Based Refinement for Powerset Domains
نویسندگان
چکیده
Counterexample-based Refinement for Powerset Domains R. Manevich, J. Field , T. A. Henzinger, G. Ramalingam, and M. Sagiv 1 Tel Aviv University, {rumster,msagiv}@tau.ac.il 2 IBM T.J. Watson Research Center, [email protected] 3 EPFL, [email protected] 4 Microsoft Research India, [email protected] Abstract. Counterexample-guided abstraction refinement (CEGAR) is a powerful technique to scale automatic program analysis techniques to large programs. However, so far it has been used primarily for model checking in the context of predicate abstraction. We formalize CEGAR for general powerset domains. If a spurious abstract counterexample needs to be removed through abstraction refinement, there are often several choices, such as which program location(s) to refine, which abstract domain(s) to use at different locations, and which abstract values to compute. We define several plausible preference orderings on abstraction refinements, such as refining as “late” as possible and as “coarse” as possible. We present generic algorithms for finding refinements that are optimal with respect to the different preference orderings. We also compare the different orderings with respect to desirable properties, including the property if locally optimal refinements compose to a global optimum. Finally, we point out some difficulties with CEGAR for nonpowerset domains. Counterexample-guided abstraction refinement (CEGAR) is a powerful technique to scale automatic program analysis techniques to large programs. However, so far it has been used primarily for model checking in the context of predicate abstraction. We formalize CEGAR for general powerset domains. If a spurious abstract counterexample needs to be removed through abstraction refinement, there are often several choices, such as which program location(s) to refine, which abstract domain(s) to use at different locations, and which abstract values to compute. We define several plausible preference orderings on abstraction refinements, such as refining as “late” as possible and as “coarse” as possible. We present generic algorithms for finding refinements that are optimal with respect to the different preference orderings. We also compare the different orderings with respect to desirable properties, including the property if locally optimal refinements compose to a global optimum. Finally, we point out some difficulties with CEGAR for nonpowerset domains.
منابع مشابه
Abstract Counterexample-based Refinement for Relational Domains
Counterexample-based Refinement for Relational Domains Tel Aviv University, School of Computer Science, TR-2006-1-35712 R. Manevich, J. Field, T. A. Henzinger, G. Ramalingam, and M. Sagiv 1 Tel Aviv University, {rumster,msagiv}@tau.ac.il 2 IBM T.J. Watson Research Center, {rama,jfield}@watson.ibm.com 3 EPFL, [email protected] Abstract. Counterexample-guided abstraction refinement (CEGAR) is a powerfu...
متن کاملA Forward-Backward Abstraction Refinement Algorithm
Abstraction refinement-based model checking has become a standard approach for efficiently verifying safety properties of hardware/software systems. Abstraction refinement algorithms can be guided by counterexamples generated from abstract transition systems or by fixpoints computed in abstract domains. Cousot, Ganty and Raskin recently put forward a new fixpoint-guided abstraction refinement a...
متن کاملFixpoint-Guided Abstraction Refinements
In this paper, we present an abstract fixpoint checking algorithm with automatic refinement by backward completion in Moore closed abstract domains. We study the properties of our algorithm and prove it to be more precise than the counterexample guided abstract refinement algorithm (CEGAR). Contrary to several works in the literature, our algorithm does not require the abstract domains to be pa...
متن کاملSAT Based Abstraction-Refinement Using ILP and Machine Learning Techniques
ion-Refinement 1. Generate an initial abstraction function h. 2. Build abstract machine M̂ based on h. Model check M̂ . If M̂ |= φ, then M |= φ. Return TRUE. 3. If M̂ 6|= φ, check the counterexample on the concrete model. If the counterexample is real, M 6|= φ. Return FALSE. 4. Refine h, and go to step 2. SAT based Abstraction-Refinement using ILP and Machine Learning Techniques 13 Abstraction Func...
متن کاملMultiple-Counterexample Guided Iterative Abstraction Refinement: An Industrial Evaluation
In this paper, we describe a completely automated framework for iterative abstraction refinement that is fully integrated into a formal-verification environment. This environment consists of three basic software tools: Forecast, a BDD-based model checker, Thunder, a SAT-based bounded model checker, and MCE, a technology for multiple-counterexample analysis. In our framework, the initial abstrac...
متن کامل